package com.itheima.array;

public class ArrayTest4 {
    public static void main(String[] args) {
        // 目标： 完成斗地主游戏的做牌和洗牌
        start();
    }

    public static void start() {
        // 1.做牌：创建一个动态初始化的数组存储54张牌
        String[] poker = new String[54];

        // 2.准备四种花色，还有点数，再开始做牌存入数组中取。
        String[] colors = {"♠", "♥", "♣", "♦"};
        String[] numbers = {"2", "A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3"};

        // 3. 遍历点数，再遍历花色
        int index = 0;
        for (int i = 0; i < numbers.length; i++) {
            for (int j = 0; j < colors.length; j++) {
                poker[index++] = colors[j] + numbers[i];
            }
        }

        // 4. 将大小王存入数组中
        poker[index++] = "大王";
        poker[index] = "小王";

        // 5. 打印牌
        System.out.println("新牌：");
        for (int i = 0; i < poker.length; i++) {
            System.out.print(poker[i] + " ");
        }
        System.out.println(); // 换行

        // 6. 洗牌：把54张牌的数组poker中的牌按顺序打乱
        for (int i = 0; i < poker.length; i++) {
            int index1 = (int) (Math.random() * poker.length);
            int index2 = (int) (Math.random() * poker.length);

            // 注释：随机取两个索引值，交换两个位置的牌
            String temp = poker[index1];
            poker[index1] = poker[index2];
            poker[index2] = temp;
        }



    }

}
